import 'package:flutter/material.dart';

void main() {
  runApp(const MaterialApp(
      home: Scaffold(
    body: MTMain(),
  )));
}

// MTMain
class MTMain extends StatefulWidget {
  const MTMain({Key? key}) : super(key: key);

  @override
  _MTMainState createState() => _MTMainState();
}

class _MTMainState extends State<MTMain> {
  @override
  Widget build(BuildContext context) {
    return Stack(alignment: AlignmentDirectional.bottomCenter, children: [
      Container(
        color: Colors.red,
        width: double.infinity,
        height: double.infinity,
        child: const Column(
          children: [MTTop(), Expanded(child: MTBody())],
        ),
      ),
      const MTButtom()
    ]);
  }
}

// MTButtom
class MTButtom extends StatelessWidget {
  const MTButtom({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Container(
      width: double.infinity,
      height: 60,
      margin: EdgeInsets.only(left: 20, right: 20, bottom: 20),
      decoration: BoxDecoration(
          color: Color.fromRGBO(0, 0, 0, 0.8),
          borderRadius: BorderRadius.circular(30)),
    );
  }
}

class MTTop extends StatelessWidget {
  const MTTop({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return Container(
      width: double.infinity,
      height: 100,
      color: Colors.amber,
    );
  }
}

class MTBody extends StatefulWidget {
  const MTBody({Key? key}) : super(key: key);

  @override
  _MTBodyState createState() => _MTBodyState();
}

class _MTBodyState extends State<MTBody> {
  @override
  Widget build(BuildContext context) {
    return Container(
        width: double.infinity, height: double.infinity, color: Colors.blue);
  }
}
